\documentclass[handout,12pt,hyperref={pdfpagelabels=false}]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{multicol}
\usepackage{listings}
\usepackage{booktabs}
\usepackage[plain]{algorithm2e}
\usepackage{algorithmic}
\usepackage{textpos}
\usepackage{lmodern}
\usepackage[round,authoryear]{natbib}

\usepackage{tikz}

\def\newblock{}

\providecommand\thispdfpagelabel[1]{}

\usetheme{Copenhagen}

\institute[FER]{Fakultet elektrotehnike i računarstva}
\title[Oblikovanje igrača Tetrisa \hspace{8.5em} \insertframenumber/12]{Projekt iz predmeta Neuronske mreže: \\ Oblikovanje igrača Tetrisa}
\author[Marović, Mihoković, Mikša, Pribil]{
Mladen Marović \quad
Marko Mihoković \\
Mladen Mikša \quad
Siniša Pribil
} 
\date{16.\ siječnja 2012.}

\begin{document}

\begin{frame}[c]
\titlepage
\end{frame}

\section{Uvod}
\begin{frame}[c]{Tetris}
  \begin{itemize}
  \item popularna računalna igra
  \item cilj: slaganje padajućih tetromina
  \end{itemize}
  
  \begin{figure}
    \begin{center}
      \includegraphics[width=0.5\linewidth]{img/Tetromini}
    \end{center}
  \end{figure}
  
  \begin{itemize}
  \item bodovanje ovisno o broju srušenih redaka
  \end{itemize}
\end{frame}

\begin{frame}[c]{Pravila\ldots}
  \begin{itemize}
  \item \ldots djelomično izmijenjena
  \item igraće polje: $12 \times 6$ kvadratića
  \item bodovanje:
    \begin{itemize}
    \item $1$ red: $100$ bodova
    \item $2$ reda: $300$ bodova
    \item $3$ reda: $500$ bodova
    \item $4$ reda: $800$ bodova
    \item kraj igre: $-800$ bodova
    \end{itemize}
  \end{itemize}
\end{frame}

\section{Neuronska mreža i značajke}
\begin{frame}[c]{Neuronska mreža}
  \begin{itemize}
  \item korištena je unaprijedna neuronska mreža
  \item ulazne varijable -- 16 značajki kojima se opisuje stanje ploče
  \item izlazna varijabla -- ocjena akcije za trenutno stanje ploče
  \item pokušaj prikaza stanja ploče binarnim vektorom redaka -- neuspjeh
  \end{itemize}
\end{frame}

\begin{frame}[c]{Značajke}
	\begin{itemize}
	\item Visina naslaganih tetromina -- redak s najviše zauzetog mjesta na ploči
	\item Rupe -- broj svih praznina koje imaju iznad sebe barem jedno zauzeto mjesto
	\item Srušeni redovi -- broj redaka uklonjenih zadnjim potezom, kojime je dobiveno trenutno stanje ploče
	\item ...
	\end{itemize}
\end{frame}

\section{Učenje neuronske mreže}

\begin{frame}[c]{Podržano učenje}
  \begin{itemize}
  \item interakcija s okolinom
  \item korišten algoritam Q-učenja uz modifikacije
  \item učenje funkcije kvalitete $Q(s, a)$ akcije $a$ u stanju $s$
  \item problem iskorištavanja i istraživanja
  \item dodatno nadzirano učenje -- brža konvergencija na bolje strategije
  \end{itemize}
\end{frame}

\begin{frame}[c]{Modifikacije Q-učenja}
  \begin{itemize}
  \item definira se željeni izlaz mreže $o_t$:
    \[
    o_t = (1 - \gamma) r_{t + 1} + \gamma \frac{1}{|\mathcal{P}|} \sum\limits_{p \in \mathcal{P}} \max_a Q(b_{t + 1}, p, a).
    \]
  \item $\mathcal{P}$ je skup tetromina, $r_{t + 1}$ trenutna nagrada, $\gamma$ odnos između trenutne nagrade i budućeg stanja
  \item uz definirani željeni izlaz uobičajeno učenje povratnim rasprostiranjem pogreške i gradijentnim spustom
  \end{itemize}
\end{frame}

\section{Rezultati}


\begin{frame}[c]{Rezultati eksperimenata 1}

\begin{table}
\caption{Rezultati eksperimenata na pojedinačnim tetrominima i parovima
tetromina}
\label{tbl:rezEksOgr}
\begin{center}
{\tiny
\begin{tabular}{@{\extracolsep{0pt}}ccccccrr}
\toprule
& & \multicolumn{4}{c}{Parametri učenja} & &
\\ \cmidrule{3-6}
Tetromini & Skriveni slojevi & $\lambda$ & $\gamma$ & $\eta$ & $\tau$
& Broj poteza & Prosjek
\\
\midrule
O & 10 & 0 & 0.6 & $2 \cdot 10^{-4}$ & 0.05 & $2 \cdot 10^4$ & $\infty$
\\
J & 20 20 & 0 & 0.6 & $2 \cdot 10^{-4}$, $3 \cdot 10^{-5}$ & 0.05 & $9.5
\cdot 10^5$ & $\infty$
\\
Z & 20 20 & 0 & 0.3 & $2 \cdot 10^{-4}$ & 0.05 & $8 \cdot 10^5$ &
$\infty$
\\
S & 20 20 & 0 & 0.3 & $2 \cdot 10^{-4}$ & 0.05 & $4 \cdot 10^5$ &
$\infty$
\\
I & 10 & 0 & 0.3 & $2 \cdot 10^{-4}$ & 0.05 & $3 \cdot 10^4$ & $\infty$
\\
T & 10 10 & 0 & 0.3 & $2 \cdot 10^{-4}$ & 0.05 & $3 \cdot 10^5$ & $\infty$
\\
O + I & 25 25 & 0 & 0.3 & $2 \cdot 10^{-4}$ & 0.05 & $3.6 \cdot 10^5$ &
5702.7
\\
J + L & 20 20 & 0 & 0.3, 0.5, 0.6 & $2 \cdot 10^{-4}$ & 0.05 & $1.2 \cdot 10^6$
& 7891.8
\\
\bottomrule
\end{tabular}
}
\end{center}
\end{table}

\end{frame}

\begin{frame}[c]{Rezultati eksperimenata 2}

\begin{table}
\caption{Proces učenja najuspješnije mreže}
\label{tbl:paramUčNaj}
\begin{center}
{\tiny
\begin{tabular}{c c c c c c r}
\toprule
& & \multicolumn{4}{c}{Parametri učenja} &
\\ \cmidrule{3-6}
Broj koraka & Vrsta učenja & $\lambda$ & $\gamma$ & $\eta$ & $\tau$ & Broj
poteza
\\
\midrule
1 & nadzirano & 0 & 0.1 & $2 \cdot 10^{-4}$ & --- & $6 \cdot 10^4$
\\
2 & nadzirano & 0 & 0.2 & $1 \cdot 10^{-5}$ & --- & $2.5 \cdot 10^5$
\\
3 & nenadzirano & 0 & 0.3 & $2 \cdot 10^{-4}$ & 0.05 & $1.3 \cdot 10^6$
\\
4 & nenadzirano & 0 & 0.5 & $2 \cdot 10^{-4}$ & 0.05 & $5 \cdot 10^4$
\\
\bottomrule
\end{tabular}
}
\end{center}
\end{table}

\end{frame}

\begin{frame}[c]{Rezultati eksperimenata 3}
\begin{itemize}
  \item naučene strategije za pojedine tetromine (osim za $L$)
  \item s nekim tetrominima je teže naučiti igrati (potrebno dulje vrijeme
  učenja i složenija mreža)
  \item naučeno igranje sa svim tetrominima
  \item prosjek bodova na 1000 partija: 3655.8
\end{itemize}

\end{frame}

\section{Zaključak}

\begin{frame}[c]{Zaključak}
  \begin{itemize}
  \item neuronska mreža za igranje Tetrisa
  \item učena podržanim učenjem
  \item rezultati zadovoljavajući i za restrikcije korištenih tetromina i
  za korištenje svih tetromina
  \end{itemize}
  
  \vspace{1em}
  
  \begin{itemize}
  \item analiza i osmišljavanje novih značajki
  \item kažnjavanje mreže ako ne sruši retke, a u mogućnosti je
  \item moguće uvođenje suparničkog igrača
  \end{itemize}
\end{frame}

\begin{frame}[c]
  \begin{center}
    {\large
      Hvala na pažnji.
    }
  \end{center}
\end{frame}

\end{document}
